﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using QLNS.Class;

namespace QLNS.NghiepVu
{
    public partial class frmCTKhenThuongKyLuat : Form
    {
        public frmCTKhenThuongKyLuat()
        {
            InitializeComponent();
        }

        DB Cn = new DB();
        string tag = "";


        private void load_dtgNhanVien()
        {
            if (Cn.KetNoi())
            {
                DataTable tbl = Cn.getTable("select row_number() over(order by MaNV) as STT, MaNV, TenNV from tbl_NhanVien");
                dtgNhanVien.DataSource = tbl;
            }
        }
        private void load_button(string  tag)
        {
            if(tag =="them")
            {
                btnThem.Enabled = false;
                btnSua.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;

                txtHinhThuc.Enabled = true;
                txtSoQD.Enabled = false;
                txtMucThuongPhat.Enabled = true;
                txtMucThuongPhat.Text = "";
                txtNoiDung.Enabled = true;
                txtNoiDung.Text = "";
            }
            else if (tag == "sua")
            {
                btnSua.Enabled = false;
                btnThem.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;

                txtSoQD.Enabled = false;
                txtNoiDung.Enabled = true;
                txtMucThuongPhat.Enabled = true;
                txtHinhThuc.Enabled = true;
            }
            else
            {
                btnThem.Enabled = true;
                btnSua.Enabled = true;
                btnXoa.Enabled = true;

                btnLuu.Enabled = false;
                btnHuy.Enabled = false;
                txtHinhThuc.Enabled = false;
                txtMucThuongPhat.Enabled = false;
                txtNoiDung.Enabled = false;
                txtSoQD.Enabled = false;
            }
        }
        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }

        private void frmKhenThuongKyLuat_Load(object sender, EventArgs e)
        {
            try
            {
                if (Cn.KetNoi())
                {
                    cbQD.DisplayMember = "TenLoai";
                    cbQD.ValueMember = "MaLoai";
                    cbQD.DataSource = Cn.getTable("select * from KhenThuongKyLuat");

                    load_dtgNhanVien();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            load_button(tag);
        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {

        }

        private void load_dtgThuongPhat()
        {
            if (Cn.KetNoi())
            {
                DataTable tbl = Cn.getTable("select SoQD from QDKhenThuongKyLuat where SoQD='"+txtSoQD.Text +"'");
                dtgThuongPhat.DataSource = tbl;
            }
        }
        private void dtgNhanVien_SelectionChanged(object sender, EventArgs e)
        {
            if (dtgNhanVien.RowCount > 0)
            {
                load_dtgThuongPhat();
            }
        }

        private void dtgThuongPhat_SelectionChanged(object sender, EventArgs e)
        {
            if (dtgThuongPhat.RowCount > 0)
            {
                txtSoQD.Text = dtgThuongPhat.CurrentRow.Cells["SoQD"].Value.ToString();
                
                dtpNgayQD.Value = DateTime.Parse(dtgThuongPhat.CurrentRow.Cells["NgayQD"].Value.ToString());
                cbQD.SelectedValue = dtgThuongPhat.CurrentRow.Cells["MaLoai"].Value.ToString();
                txtNoiDung.Text = dtgThuongPhat.CurrentRow.Cells["NoiDung"].Value.ToString();
                txtHinhThuc.Text = dtgThuongPhat.CurrentRow.Cells["HinhThuc"].Value.ToString();
                txtMucThuongPhat.Text = dtgThuongPhat.CurrentRow.Cells["MucThuongPhat"].Value.ToString();
            }
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            tag = "them";
            load_button(tag );
            txtSoQD.Text = Cn.SinhMa("SoQD","QDKhenThuongKyLuat","QD");
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            tag = "sua";
            load_button(tag );

        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            if (Cn.KetNoi())
            {
                if (tag == "them")
                {
                    if(txtHinhThuc.Text=="")
                    {
                        MessageBox.Show("Bạn chưa nhập hình thức");
                        txtHinhThuc.Focus();
                        return;

                    }
                    else if(txtMucThuongPhat.Text=="")
                    {
                        MessageBox.Show("Bạn chưa nhập mức thưởng phạt");
                        txtMucThuongPhat.Focus();
                        return;

                    }
                    else if(txtNoiDung.Text=="")
                    {
                        MessageBox.Show("Bạn chưa nhập nội dung");
                        txtNoiDung.Focus();
                        return;
                    }

                    Cn.KetNoi();
                    Cn.Insert_Table("QDKhenThuongKyLuat", "SoQD,NgayQD,MaLoai,NoiDung,HinhThuc,MucThuongPhat", "'" + txtSoQD.Text + "','" + dtpNgayQD.Value.ToString("yyyy-MM-dd") + "','" + cbQD.SelectedValue.ToString() + "',N'" + txtNoiDung.Text + "',N'" + txtHinhThuc.Text + "','" + txtMucThuongPhat.Text + "'");
                }// cái câu lệnh insert trên ku copy của nó hả câu lênh nào? câu lệnh vợ vùa chỉ đoó k. ku cop của nó sao đc.
                    //nó làm linq cơ mà nhưng mà ku làm sao lại làm thế kia. trong bảo ak/
                    // để vwoj nói nhá cái 
                    // bjo bảng chitietkhen... chỉ còn các mục này
                    // đó chỉ còn các mục đó, vậy thì mình có cần thiết kế cái gì mà nội dung hình thức nữa k
                    //à. đây là code bài qlns mà ku làm. bjo vọ phải sửa theo bài vợ chứ. 
                    //mấy cái như mức thưởng phạt thì vẫn phải có . chứ sao trong csdl của con be kia cũng k có nhỉ
                    //để ku sem
                    //nó có 1 bảng tên là qd khen thưởng đấy. vợ k thấy à?oh vợ làm tiếp đã thế nhưng mà thế này thì isert vào bảng qdinhkhenthuogn ak.có chứ. vợ chạy thử bài nó mà sem.bài nó vợ k chạy được để ku chạy
                else
                {
                    Cn.Update_Table("tbl_CTKhenThuongKyLuat","NgayQD='"+dtpNgayQD.Value.ToString("yyyy-MM-dd")+"',MaLoai='"+cbQD.SelectedValue.ToString()+"',NoiDung=N'"+txtNoiDung.Text+"',HinhThuc=N'"+txtHinhThuc.Text+"',MucThuongPhat='"+txtMucThuongPhat.Text+"'","SoQD='"+txtSoQD.Text+"'");
                }
                
            }
            load_dtgThuongPhat();
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            DialogResult h = MessageBox.Show("Bạn có muốn xóa không?","Thông báo",MessageBoxButtons.YesNo,MessageBoxIcon.Question );
            if(h==DialogResult.Yes )
            {
            if (Cn.KetNoi())
            {
                if (dtgThuongPhat.RowCount > 0)
                {
                    Cn.Delete_Table("ChiTietKhenThuongKyLuat","SoQD='"+txtSoQD.Text+"'");
                    load_dtgThuongPhat();
                    load_button(tag);
                    tag = "";
                    
                    MessageBox.Show("Xóa thành công");
                }
            }
            }

        }

        private void btnHuy_Click(object sender, EventArgs e)
        {
            tag = "";
            load_button(tag );
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            DialogResult h = MessageBox.Show("Bạn có muốn thoát không","Thông báo",MessageBoxButtons.YesNo,MessageBoxIcon.Question );
            if(h==DialogResult.Yes )
            {
            this.Close();
            }
        }

    }
}
